DROP procedure IF EXISTS `ConsultarTercero`;

DELIMITER $$
CREATE  PROCEDURE `ConsultarTercero`(in sccondicionjuridica numeric,in insctipodocumento numeric, in indocumento varchar(50) )
BEGIN
	IF (LENGTH(indocumento)=0) THEN 
		SELECT
		a.sm_sctercero,
		a.sm_sccondicionjuridica,
		a.sm_sctipodocumento as nmtipodocumento,
		b.sm_dsdatmaestro as tipodocumento,
		a.sm_coidentificacion,
		a.sm_dsprimernombre,
		a.sm_dssegundonombre,
		a.sm_dsprimerapell,
		a.sm_dssegundoapell,
		a.sm_dsrazonsocial,
		a.sm_dssigla,
		a.sm_cotelefono,
		a.sm_dsextension,
		a.sm_dscelular,
		a.sm_dsemail,
		a.sm_dsdireccion,
		a.sm_scciudad,
		c.sm_dsciudad,
		a.sm_fhnacimiento,
		a.sm_fhmodificacion,
		a.sm_fhingreso,
		a.sm_fhretiro,
		a.sm_cousuario,
		a.sm_snoperario,
        a.sm_nmdigitoverificacion,
        a.sm_sncliente,
        c.sm_scdepartamento,
        d.sm_dsdepartamento
		FROM Smart_terceros a
		inner join Smart_datos_maestros b on b.sm_scdatmaestro=a.sm_sctipodocumento
		inner join Smart_ciudad c on c.sm_scciudad=a.sm_scciudaddirr
        inner join Smart_departamento d on d.sm_scdepartamento=c.sm_scdepartamento
        
        
        ;
	END IF;
    IF (insctipodocumento>0 && LENGTH(indocumento)>0) THEN
		SELECT
		a.sm_sctercero,
		a.sm_sccondicionjuridica,
		a.sm_sctipodocumento as nmtipodocumento,
		b.sm_dsdatmaestro as tipodocumento,
		a.sm_coidentificacion,
		a.sm_dsprimernombre,
		a.sm_dssegundonombre,
		a.sm_dsprimerapell,
		a.sm_dssegundoapell,
		a.sm_dsrazonsocial,
		a.sm_dssigla,
		a.sm_cotelefono,
		a.sm_dsextension,
		a.sm_dscelular,
		a.sm_dsemail,
		a.sm_dsdireccion,
		a.sm_scciudad,
		c.sm_dsciudad,
		a.sm_fhnacimiento,
		a.sm_fhmodificacion,
		a.sm_fhingreso,
		a.sm_fhretiro,
		a.sm_cousuario,
		a.sm_snoperario,
        a.sm_nmdigitoverificacion,
        a.sm_sncliente,
        c.sm_scdepartamento,
        d.sm_dsdepartamento
		FROM Smart_terceros a
		inner join Smart_datos_maestros b on b.sm_scdatmaestro=a.sm_sctipodocumento
		inner join Smart_ciudad c on c.sm_scciudad=a.sm_scciudaddirr
        inner join Smart_departamento d on d.sm_scdepartamento=c.sm_scdepartamento
        
        WHERE a.sm_sctipodocumento=insctipodocumento
        AND sm_coidentificacion=indocumento
        AND b.sm_scmaestro=sccondicionjuridica;
    
    END IF;

END$$

DELIMITER ;